﻿using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;

namespace K9Workflow.Forms
{
    public interface IFormManager
    {
        ValueTask<int> CreateAsync(Form form, CancellationToken cancellation);

        ValueTask UpdateAsync(Form form, CancellationToken cancellation);

        ValueTask DeleteAsync(int id, CancellationToken cancellation);

        ValueTask<Form> GetAsync(int id, CancellationToken cancellation);

        ValueTask<IReadOnlyList<Form>> GetAllAsync(CancellationToken cancellation);
    }
}
    